Server apparatus, image forming system, and method of managing print data

ABSTRACT

According to one embodiment, a server apparatus includes a reception unit, a storage unit, a list sending unit, and a transmission unit. The reception unit receives print data designating a user who is able to execute printing. The storage unit stores the print data received by the reception unit. The list sending unit sends a list of the print data, which the user who is an operator of an image forming apparatus is able to execute, to the image forming apparatus. The transmission unit transmits the print data selected from the list of the print data sent by the list sending unit to the image forming apparatus.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of application Ser. No. 13/169,125filed Jun. 27, 2011, which is based upon and claims the benefit ofpriority from U.S. Provisional Application No. 61/359,173 filed on Jun.28, 2010; the entire contents of both of which are incorporated hereinby reference.

FIELD

Embodiments described herein relate generally to a server apparatus, animage forming system, and a method of managing print data.

BACKGROUND

An image forming system accumulates print jobs set by a user terminal asprint data in a server apparatus, reads the print data accumulated inthe server apparatus from an image forming apparatus, and forms animage. In an image forming system according to the related art, an imageforming apparatus executes printing based on the print data accumulatedin the server apparatus through an operation of a sender sending theprint data to a server.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram schematically illustrating an example of theconfiguration of an image forming system.

FIG. 2 is a diagram illustrating an example of the structure of a printjob.

FIG. 3 is a block diagram illustrating an example of the configurationof each control system of a user terminal, a print server, and an imageforming apparatus.

FIG. 4 is a diagram illustrating a management function of the print jobin the print server.

FIG. 5 is a diagram illustrating a sequence to explain an example ofPULL print in the image forming system.

FIG. 6 is a flowchart illustrating an example of a process of settingthe PULL print in the user terminal.

FIG. 7 is a diagram illustrating a display example of a destinationsetting screen for the print job.

FIG. 8 is a flowchart illustrating an example of a process ofregistering a job of the PULL print in the print server.

FIG. 9 is a diagram illustrating a first storage form of the print jobin the print server.

FIG. 10 is a diagram illustrating a second storage form of the print jobin the print server.

FIG. 11 is a diagram illustrating an example of the structure of aJobManager file.

FIG. 12 is a diagram illustrating an example of the structure of aJobManager file.

FIG. 13 is a diagram illustrating an example of the structure of aRoleManager file.

FIG. 14 is a diagram illustrating a third storage form of the print jobin the print server.

FIG. 15 is a diagram illustrating an example of the structure of aJobCount file.

FIG. 16 is a diagram illustrating an example of the structure of aJobRole file.

FIG. 17 is a diagram illustrating a fourth storage form of the print jobin the print server.

FIG. 18 is a diagram illustrating an example of the structure of a Usersfile.

FIG. 19 is a flowchart illustrating an execution process (transmissionprocess) of the print job in the print server.

FIG. 20 is a flowchart illustrating an execution process of the printjob in the image forming apparatus.

FIG. 21 is a diagram illustrating a display example of the list of theprint jobs of the respective users.

FIG. 22 is a diagram illustrating a display example of the list of theprint jobs of the respective groups.

DETAILED DESCRIPTION

In general, according to one embodiment, a server apparatus includes areception unit, a storage unit, a list sending unit, and a transmissionunit. The reception unit receives print data designating a user who isable to execute printing. The storage unit stores the print datareceived by the reception unit. The list sending unit sends a list ofthe print data executable by a user, who is an operator of an imageforming apparatus, to the image forming apparatus. The transmission unittransmits the print data selected from the list sent by the list sendingunit to the image forming apparatus.

Hereinafter, embodiments will be described in detail with reference tothe drawings.

FIG. 1 is a diagram schematically illustrating an example of theconfiguration of an image forming system.

In the example of the configuration shown in FIG. 1, the image formingsystem includes a plurality of user terminals 1, the print server 2, anda plurality of image forming apparatuses 3. In the image forming system,the respective user terminals 1, the print server 2, and the respectiveimage forming apparatuses 3 are connected to a network 5. The network 5is constructed by wired or wireless communication. The network 5 is notlimited to a network in a local network area. For example, the network 5may include a wide area network such as the Internet.

The image forming system is a system that has a function (referred to asPULL print) of accumulating the print jobs requested from the userterminal 1 by users in the print server 2 and executing the print jobsaccumulated in the print server 2 in response to an operation executedin the image forming apparatus 3 by the user.

The user terminal 1 is a terminal apparatus that is used by the user.The user terminal 1 may be an apparatus that can execute communicationvia the network 5. For example, the user terminal 1 may be a personalcomputer (PC) or a portable terminal apparatus. The user terminal 1 hasa user identification function of acquiring user identificationinformation used to uniquely specify a user. Further, the user terminal1 may execute user authentication using an authentication function ofthe print server 2. In this embodiment, it is assumed that the userterminal 1 acquires the user identification information when the userterminal 1 instructs at least the PULL print.

The user terminal 1 operates a printer driver program (hereinafter,referred to as a printer driver) for the PULL print in response to aprint instruction from the user. The user terminal 1 generates the printjob (print data) indicating the print contents instructed by the user,when a processor executes the printer driver. The user terminal 1attaches the user identification information regarding a sender to theprint job. Further, when the user terminal 1 permits the user other thanthe sender to execute printing based on the print job, the user terminal1 attaches information indicating identification information or a groupof the users who are able to execute the printing to the print job. Theuser terminal 1 transmits the generated print job to the print server 2.

FIG. 2 is a diagram illustrating an example of the structure of theprint data as the print job transmitted from the user terminal 1 to theprint server 2. The print data shown in FIG. 2 is print data in whichthe contents of the print job including print setting information aredescribed with a PJL (Print Job language). PJL data indicating thecontents of the print job includes setting information regarding theprint job and image data to be printed.

In the example shown in FIG. 2, the setting information regarding theprint job includes information (SENDER) indicating the sender,information (RECEIVER) indicating a receiver as a user who is able toexecute the print job, and information (PASS) indicating whether thereis a password. Further, the sender of the print job may be specified bythe print server 2. For example, the print server 2 may specify a userbased on information acquired from the user terminal 1 connected totransmit the print job.

The information (SENDER) indicating the sender is information regardinga user requesting registration of the print job. The information(RECEIVER) indicating the receiver is information regarding a user whois able to execute the print job. The receiver includes the user otherthan the sender. Further, the information (RECEIVER) indicating thereceiver may be information indicating not only an individual user butalso a group to which the plurality of users belong.

The information (PASS) indicating whether there is a password isinformation indicating whether a password is set to execute the printjob. For example, if “PASS=0” is set, no password is set. If “PASS=1” isset, a password is set. The password itself may be included in the PJLdata of the print or may be separately set.

The print server 2 is configured by a server computer. The print server2 has a function of communicating with each user terminal 1 and eachimage forming apparatus 3 via the network 5. The print server 2 receivesthe print job (print data) requested from the user terminal 1. The printserver 2 stores the print jobs and manages the users or a group that isable to execute printing based on the print job.

The print server 2 has a user authentication function. The print server2 authenticates the user operating the image forming apparatus 3. Theprint server 2 supplies the list of the print jobs executable by theuser or transmits the print job in response to a request from the userwho succeeds in the authentication.

Each image forming apparatus 3 may be configured by, for example, adigital multi function peripheral (MFP). The image forming apparatus 3has a printer function, a network communication function, and a useridentification (user authentication) function. The image formingapparatus 3 determines the user identification information used tospecify the user as an operator by the user identification function. Theuser identification information may be information by which the printserver 2 can determine the user associated with the job. For example,the user identification information may be user ID input by the operatorwho logs in the image forming apparatus 3, a password input by theoperator, or information obtained as the result of the userauthentication process based on authentication information such asbiological information.

When the image forming apparatus executes the PULL print, the imageforming apparatus 3 acquires the authentication information from a userand executes the authentication function of the print server 2 toauthenticate the user. If the user authentication succeeds, the imageforming apparatus 3 asks the print server 2 for the list of the printjobs that the user is able to execute. For example, the image formingapparatus 3 transmits a query (transmission request for the print joblist) for the print job corresponding to the user identificationinformation obtained by the user identification function to the printserver 2 via the network 5. The image forming apparatus 3 displays thelist of the print jobs acquired from the print server 2. The imageforming apparatus 3 acquires the print jobs that the user instructs toprint from the print server 2 and executes the printing.

Next, the configuration of each control system of the user terminal 1,the print server 2, and the image forming apparatus 3 will be described.

FIG. 3 is a block diagram illustrating an example of the configurationof each control system of the user terminal 1, and the print server 2,and the image forming apparatus 3.

First, the configuration of the user terminal 1 will be described.

As shown in FIG. 3, each user terminal 1 includes a processor (CPU) 11,a RAM 12, a ROM 13, an HDD 14, a network interface (I/F) 15, a displayunit 16, an operation unit 17, and a clock 18.

For example, the processor 11 is a CPU. The processor 11 controls theentire user terminal 1. The processor 11 realizes various kinds ofprocessing functions by executing programs stored in the ROM 13 or theHDD 14. The RAM 12 is a working memory. The ROM 13 stores a controlprogram, control data, or the like for controlling the basic operationsof the user terminal 1. The HDD 14 is a storage device that stores data.For example, the HDD 14 stores data such as an image to be printed, anapplication program (for example, a printer driver) executed by theprocessor 11, user authentication data, and the like.

The network interface 15 is an interface that executes datacommunication with each of the apparatuses connected to the network 5.The display unit 16 displays an operation guide or the like. Forexample, the display unit 16 displays a print setting screen (printinstruction screen) when the processor 11 executes the printer driver.The operation unit 17 is used when a user inputs information. Forexample, the operation unit 17 is configured by a keyboard and a mouse,or a touch panel provided in the display unit 16. The clock 18 counts acurrent time.

In the user terminal 1, the processor 11 realizes the useridentification function by executing a program. The user identificationfunction may be a user ID input by the user in a log-in process or userinformation acquired through an identification process withauthentication information such as a password. For example, the userinputs the user ID in the log-in process of the user when the userterminal 1 is operated. The user identification information may beacquired by a user authentication process executed when the userinstructs the PULL print.

In the user terminal 1, the processor 11 receives the user setting andregistration of the PULL print by executing the printer driver forexecuting the PULL print. For example, the processor 11 displays theprint setting screen of the PULL print on the display unit 16 byexecuting the printer driver and receives print setting contents of theoperation unit 17 from the user. When the user instructs to execute(register) the PULL print, the processor 11 generates the job file(print data) indicating the print contents and transmits the generatedjob file to the print server 2.

Next, the configuration of the print server 2 will be described.

As shown in FIG. 3, the print server 2 includes a processor (CPU) 21, aRAM 22, a ROM 23, an HDD 24, and a network interface (I/F) 25, and aclock 26.

For example, the processor 21 is a CPU. The processor 21 controls theentire print server 2. The processor 21 realizes various kinds ofprocessing functions by executing programs stored in the ROM 23 or theHDD 24. The processor 21 executes a program to realize a managementfunction of the print job. The RAM 22 is a working memory. The ROM 23stores a control program, control data, or the like for controlling thebasic operations of the print server 2.

The network interface 25 is an interface that executes datacommunication with each of the apparatuses connected to the network 5.The clock 26 counts a current time. The HDD 24 is a storage device thatstores data. The HDD 24 stores a program used to realize the managementfunction of the print job. Further, the HDD 24 stores the print jobs(job files), management information regarding the print jobs, and thelike.

Next, the configuration of the image forming apparatus 3 will bedescribed.

As shown in FIG. 3, the image forming apparatus 3 includes a processor(CPU) 31, a RAM 32, a ROM 33, an HDD 34, a network interface (I/F) 35, adisplay unit 36, an operation unit 37, a printer 38, and anauthentication information acquisition information unit 39.

For example, the processor 31 is a CPU. The processor 31 realizesvarious kinds of processing functions by executing programs stored inthe ROM 33 or the HDD 34. The RAM 32 is a main memory that functions asa working memory. The ROM 33 stores a control program, control data, orthe like for controlling the operations of the image forming apparatus3. The HDD 34 is a storage device that stores data. The networkinterface 35 is an interface that communicates with each of the printservers 2 via the network 5.

The display unit 36 displays an operation guide or the like. Theoperation unit 37 is used when a user inputs information. The displayunit 36 and the operation unit 37 are configured by an operation panelprovided with a display device that has a hard key and a touch paneltherein. When the PULL print is executed using the job file registeredin the print server 2, the user inputs the user identificationinformation through the operation unit 37 and instructs to executeprinting using the job file corresponding to the user identificationinformation acquired from the print sever 2.

The printer 38 forms image data included in the print data on a sheetwith color or monochrome under the print condition included in the jobfile (print data). For example, the printer 38 is an electrophotographicimage forming apparatus. However, the printer 38 is not limited to theelectrophotographic image forming apparatus, but may be an image formingapparatus that forms an image by an inkjet type or a thermal transfertype.

The authentication information acquisition unit 39 acquires userauthentication information. For example, when the authenticationinformation is acquired from an IC card carried by the user, theauthentication information acquisition unit 39 is configured by an ICcard reader. Further, when biological information regarding a user isacquired as the authentication information, the authenticationinformation acquisition unit 39 acquires the biological information fromthe user. Furthermore, when a user inputs authentication informationsuch as a password, the authentication information acquisition unit 39is configured by a keyboard or the like. In this case, theauthentication information acquisition unit 39 may be the operation unit37.

Next, the management function of the print job in the print server 2will be described.

FIG. 4 is a diagram illustrating the management function of the printjob in the print server 2.

As shown in FIG. 4, the print server 2 includes, as management functionsof the print jobs, a reception function 41, a spooler 42, a port monitor43, a distribution function (registration function) 44, a notificationfunction 45, a management function 46, a Web server function (data inputand output function) 47, a printing function (temporary) 48, and anActive Directory (user account (authentication) function) 49.

The reception function 41 is a function of receiving the print jobtransmitted from the user terminal 1 through the communication interface25. The spooler 42 temporarily stores the print job received by thereception function 41. The port monitor 43 monitors the reception statusof the print job and uniquely assigns a file name to the print job(print data) temporarily stored in the spooler 42.

The distribution function 44 determines the user who is able to executethe temporarily stored print job. The distribution function 44 specifiesthe user or the group that is able to execute the print job based ondesignation information included in the print job. The distributionfunction 44 distributes and stores the print jobs to folders (folders ofrespective user names) provided in a JOB storage region 46 a andcorresponding to the respective users or folders (folders of respectivegroup names) corresponding to the respective groups based on the user orthe group that is able to execute the print job.

For example, when the user who is able to execute the print job isdesignated as an individual, the distribution function 44 stores theprint job in a folder provided in the JOB storage region 46 a andcorresponding to the user. When the user who is able to execute theprint job is designated as a group, the distribution function 44specifies each user belonging to the group and stores the print job in afolder corresponding to the user. Further, when the user who is able toexecute the print job is designated as a group, the distributionfunction 44 may store the print job in a folder provided in the JOBstorage region 46 a and corresponding to the group.

The notification function 45 notifies each user who is a user other thanthe sender of the print job and is able to execute the print job of thefact that the print job is stored (registered). The notificationfunction 45 notifies each user of the registration of the print jobusing an electronic mail, a pop-up, a ticker (RSS, gadget), or the like.For example, when an electronic mail is used, the notification function45 may include a mail server function.

The management function 46 manages the print jobs stored in the JOBstorage region 46 a. The JOB storage region 46 a stores the print jobsdistributed to the folder of each user or each group by the distributionfunction 44. The management function 46 includes a function ofretrieving the print jobs stored in each folder of the JOB storageregion 46 a. For example, the management function 46 generates the listof the print jobs that a specific user is able to execute or extractsthe print job designated by a printing instruction (transmissionrequest).

The management function 46 has a function of deleting the print jobstored in each folder of the JOB storage region 46 a under apredetermined condition. For example, the management function 46 deletesthe print job of which the printing (transmission) is completed by theuser who is able to execute the print job. The management function 46stores each print job only during a predetermined storage period. Themanagement function 46 automatically deletes the print job that is notexecuted during the predetermined storage period.

The Web server function 47 supplies information supplied to the imageforming apparatus 3 as the display data to be displayed on the displayunit 36. For example, the Web server function 47 supplies the list ofthe print jobs or the like, which the user designated by the imageforming apparatus 3 is able to execute, as the display data to bedisplayed on the display unit 36. The Web server function 47 alsosupplies the print setting screen or the like for the printing of theprint job designated by the user to the image forming apparatus 3.

The Web server function 47 acquires information input by the user fromthe display screen of the display unit 36 of the image forming apparatus3. For example, the Web server function 47 acquires a transmissionrequest for the list of the print jobs instructed by the user in theimage forming apparatus 3, the printing instruction (transmissionrequest) for a specific print job, or the like. The Web server function47 acquires information such as a password input by the user in theimage forming apparatus 3.

The printing function 48 receives a printing instruction from the imageforming apparatus 3 and extracts the print job instructed to be printedfrom the print job stored in the JOB storage region 46 a by themanagement function 46. The printing function 48 transmits the print jobinstructed to be printed to the image forming apparatus 3 by the Webserver function 47.

The Active Directory 49 has a user account function (authenticationfunction). For example, the Active Directory 49 authenticates the userwho logs in the image forming apparatus 3. Further, the Active Directory49 may manage information such as a mail address as a notificationdestination of the information regarding each user. For example, theActive Directory 49 may manage information (for example, a mail address)indicating the notification destination of each user who is able toexecute the print job by the notification function 45.

Next, an overview of the PULL print process in the image forming systemwill be described.

FIG. 5 is a diagram illustrating a sequence to explain an example of thePULL print in the image forming system.

In the example shown in FIG. 5, an overview in which User 2 executes theprint job of the PULL print set by User 1 is shown.

First, User 1 sets the print job by operating the user terminal 1 (PC1a) so that User 2 executes the set print job. For example, when theprint job is set to the PJL data in the configuration shown in FIG. 3,PC1 a generates the PJL data in which SENDER is set to User 1 andRECEIVER is set to User 2. When the PJL data of the print job isgenerated, PC1 a transmits the PJL data of the print data generated inresponse to the registration request for the print job executed by User2 to the print server 2.

The print server 2 distributes and stores the print job supplied fromPC1 a to the folder of User 2 by the distribution function 44. When theprint server 2 stores the print job in the folder of User 2, the printserver 2 generates a mail (sets notification for registration of theprint job) to notify User 2 of the registration of the print job by thenotification function 45 and transmits (notifies) the generated mail toUser 2. After the print server 2 stores the print job in the folder ofUser 2, the print server 2 manages the print job stored in the folder ofUser 2 by the management function 46.

On the other hand, User 2 notified of the registration of the print jobcan execute the print job in any image forming apparatus (MFP) 3connected to the print server 2. For example, the authenticationinformation acquisition unit 39 of the MFP 3 in which User 2 logs inacquires the authentication information from User 2. The authenticationinformation may be information read from an IC card carried by User 2 ormay be information input from the operation unit by User 2. The MFP 3transits the acquired authentication information along with theauthentication request to the print server 2.

The print server 2 executes the user authentication process based on theauthentication information transmitted along with the authenticationrequest from the MFP 3. The print server 2 executes the userauthentication process based on the authentication information from theMFP 3. The print server 2 transmits the authentication result obtainedthrough the user authentication process to the image forming apparatus.In the example shown in FIG. 5, it is assumed that the print server 2notifies the MFP 3 of the fact that the authentication of User 2succeeds.

The MFP 3 notified of the fact that the authentication succeeds by theprint server 2 requests the print server 2 to transmit the list of theprint jobs that User 2 is able to execute as the PULL print in responseto an operation of User 2. The list of the print jobs may be the list ofthe print jobs that User 2 is able to execute as an individual or may bethe list of the print jobs that the group of User 2 is able to execute.The print server 2 generates the list of the print jobs of User 2 inresponse to the display request for the list of the print jobs of User 2given from the MFP 3. The print server 2 transmits the list of the printjobs of User 2 as display data displayed on the display unit 36 to theMFP 3.

The MFP 3 displays the list of the print jobs of User 2 received fromthe print server 2 on the display unit 36. The display unit 36 displaysthe list of the print jobs of User 2 as a selection screen used for theuser to select the print job. That is, User 2 selects the print jobinstructed to be printed from the list of the print jobs displayed onthe display unit 36. When the user selects the print job to be printed,the MFP 3 transmits the printing instruction (transmission request forthe print job) for the print job selected by the user to the printserver 2. The print server 2 extracts the print job in response to theprinting instruction (transmission request) from the MFP 3 and transmitsthe extracted print job to the MFP 3. When the MFP 3 receives the printjob corresponding to the printing instruction from the print server 2,the printer 38 of the MFP 3 executes printing based on the print job.

As described above, the image forming system can register the print jobfor the PULL print designated by others other than the sender in theprint server, notifies the execution person of the print job registeredin the print server, and can execute the print job registered in theprint server by each execution person including the others other thanthe sender in the MFP 3.

Hereinafter, an example of the operation of each apparatus in the PULLprint will be described.

First, a process of setting the PULL print in the user terminal 1 willbe described.

FIG. 6 is a flowchart illustrating an example of the process of settingthe PULL print in the user terminal 1.

In the user terminal 1, the print job for the PULL print can be set insuch a manner that the processor 11 executes the printer driver. In theoperation example shown in FIG. 6, the user terminal 1 acquires the userID of the user who operates the user terminal 1, before operating theprinter diver (for example, operating the user terminal) (ACT 11). Forexample, the user terminal 1 acquires the user ID of the user as anoperator in the log-in process. When the user executes the PULL print,the user gives a printing instruction through the operation unit 17 whenthe image data (or document data) to be printed is designated. If theprocessor 11 receives the printing instruction, the processor 11operates the printer driver (ACT 12).

When the processor 11 operates the printer driver, the processor 11displays a basic print setting screen on the display unit 16 (ACT 13).The kinds of print including the PULL print can be selected on the basicprint setting screen. Basic setting items, such as a sheet size, a sheetdischarging tray, a copy number, a printing direction, and a color mode,regarding the printing can be set on the basic print setting screen.

If the user selects the PULL print as a kind of job through theoperation unit 17 on the basic print setting screen (YES in ACT 14), theprocessor 11 displays the print setting screen for the PULL print (ACT15). For example, the processor 11 displays, on the display unit 16, theprint setting screen for the PULL print that includes input keys used toinstruct setting of a destination (printing executor), setting of apassword, or other print settings.

If the processor 11 receives an instruction to set the destination onthe print setting screen for the PULL print (YES in ACT 16), theprocessor 11 displays a destination setting screen used to designate theuser (a receiver, a destination) that is able to execute the print jobas the PULL print (ACT 17). The destination setting screen is a screenused to set the user who executes the print job. In this embodiment, theuser other than the sender that sends (registers) the print job of thePULL print can execute the print job. The user (sender) setting theprint job is assumed to set (transmit) the user who is able to executethe print job. That is, the user sets the user serving as thedestination (executable user) other than himself or herself on thesetting screen of the PULL print. If the destination other than himselfor herself is designated on the destination setting screen (YES in ACT18), the processor 11 sets the destination designated as the user(receiver) that is able to execute the print job (ACT 19).

FIG. 7 is a diagram illustrating a display example of the destinationsetting screen for the print job.

In the display example shown in FIG. 7, the display unit 16 displays asetting field 60 for the subject user, a setting field 61 for otherusers, a password setting field 62, a mode setting field 63, a cancelbutton 64, and an OK button 65. The setting field 60 for the subjectuser is a setting field used set whether the user himself or herself(the subject user) is permitted to execute the print job. The settingfield 61 for other users is a setting field used to set whether othersis permitted to execute the print job. The password setting field 62 isa setting field used to set existence or non-existence of a password.The mode setting field 63 is a setting field used to set the color mode.The cancel button 64 is a button used to instruct cancellation of thedestination setting. The OK button 65 is a button used to instruct theconfirmation of the destination setting.

When the user sets the setting field 61 for other users so that otherusers can execute the print job, the display unit 16 further displays acandidate list 66, an addition button 67, a deletion button 68, and asetting user list 69. The candidate list 66 is a list of candidates(users and groups) who can be selected (set) as other users who are ableto execute the print jobs.

The user operates the operation unit 17 to select an individual user ora group that is able to execute the print job from the candidatesdisplayed in the candidate list 66. For example, the user can select thecandidate displayed in the candidate list 66 by touching a displayportion on a touch panel serving as the operation unit 17. When thecandidate displayed in the candidate list 66 is selected and theaddition button 67 is instructed, the selected candidate is added to thesetting user list 69 as a setting user.

The user can operate the operation unit 17 to select an individual useror a group from the setting user displayed in the setting user list 69.For example, the user can select the setting person displayed in thesetting user list 69 by touching a display portion on the touch panelserving as the operation unit 17. When the setting person displayed inthe setting user list 69 is selected and the deletion button 68 isinstructed, the selected setting person is deleted from the setting userlist 69.

When the user instructs a password for the print job in the passwordsetting field 62, the display unit 16 displays a password input screen.The password input screen may be displayed as a display field 62 a shownin FIG. 7 or may be displayed as another display window. In the modesetting field 63, the user can set a desired color mode. The modesetting field 63 may display a list of selectable modes so that a modedesignated from the list is set.

When the destination is designated on the destination setting screen(YES in ACT 18), the processor 11 sets the destination designated as theuser (receiver) that is able to execute the print job (ACT 19).

If the setting of a password is instructed on the destination settingscreen (YES in ACT 20), the processor 11 displays the password inputscreen on the display unit 16 (ACT 21). The password input screen is ascreen used to input the password necessary to execute the print job.When the user operates the operation unit 17 to input the password onthe password input screen, the processor 11 sets the input password (ACT22).

Each user is notified of the set password separately from theregistration notification for the print job from the print server 2described below. The password may be information determined in advancebetween the users or in the group.

If the setting contents other than the destination and the password areinstructed on the destination setting screen (YES in ACT 23), theprocessor 11 updates the print setting in accordance with the instructedcontents (ACT 24).

When the print setting is completed in this way, the user inputs the OKbutton 65 to instruct confirmation of the setting contents. That is, ifthe OK button 65 is input (YES in ACT 25), the processor 11 confirms theprint setting contents and generates the data indicating the print jobincluding the set print setting contents (ACT 26). The data indicatingthe print job is configured by the PJL data, as shown in FIG. 3. Whenthe data indicating the print job is generated, the processor 11transmits the PJL data of the print job to the print server 2 (ACT 27).

According to the above-described processes, the user terminal sets theprint job that the user other than the sender designated by the senderis able to execute and can register the print job to the print server.Further, the user terminal can suggest the list of the users or thegroups that is able to execute the print job and can register the printjob, in which the user or the group selected from the list is designatedas the executor (receiver) of the print job, in the print server. Thatis, the user can supply, as the print job, a print product that the userdesires to send to other users.

Next, a process of registering the print job for the PULL print in theprint server 2 will be described.

FIG. 8 is a flowchart illustrating an example of a process ofregistering a job of the PULL print in the print server 2.

The network interface 25 of the print server 2 receives the PJL data ofthe print job of the PULL print from the user terminal 1 via the network5 (ACT 31). The processor 21 temporarily stores the PJL data of theprint job received from the user terminal 1 in the spooler 42 (ACT 32).

The processor 21 of the print server 2 determines whether the executor(called a destination, a receiver, a user or the like that is able toexecute the print job) of the received print job is designated as thegroup or as the individual user (ACT 33). For example, when the PJL dataof the print job has the same configuration as that shown in FIG. 3, theprocessor 21 determines whether the receiver is a group name or anindividual name in the received PJL data.

If the executor of the print job is designated as the individual user(NO in ACT 33), the processor 21 stores the print job of each designatedindividual user (ACT 35). For example, the processor 21 stores the PJLdata of the print job in the folder (for example, a folder with anindividual name) generated for each individual user. When there is nofolder of the designated user, the processor 21 generates the folder ofthe user and stores the PJL data of the print job in the generatedfolder.

If the executor of the print job is designated as the group (YES in ACT33), the processor 21 determines whether the print job is stored foreach individual user or each group in accordance with the storage formof the print job in the print server 2 (ACT 34). If the processor 21determines whether the print job is stored not for each group but foreach individual user (YES in ACT 34), the processor 21 stores the printjob of each of all the users belonging to the group (ACT 35). Forexample, the processor 21 stores the PJL data of the print data in thefolder (for example, a folder with an individual name) of each of theusers belonging to the group.

On the other hand, if the processor 21 determines whether the print jobis stored for each group (NO in ACT 34), the processor 21 stores theprint job of each group (ACT 35). For example, as the storage of eachgroup, the processor 21 stores the PJL data of the print data in thefolder (for example, a folder with a group name) generated for eachgroup. When there is no folder of the designated group, the processor 21generates the folder of this group and stores the PJL data of the printjob in the generated folder.

When the processor 21 stores the print job of each group, the processor21 generates the management information so that each user belonging tothe group can manage the execution state or the like of the print job(ACT 37) and stores the generated management information (ACT 38). Themanagement information regarding the print job is information that isnecessary for the plurality of users belonging to the group to executethe print job. For example, the management information regarding theprint job includes information used to count the execution number of theprint job or information indicating the condition or the like that theprint job is executed. The processor 21 stores a file (for example, aJobManager file, a JobCount file, a JobRole file, or the like) includingthe management information together with the print job in the folder ofthe group.

When the print jobs are distributed to the executors and are stored, theprocessor 21 determines whether to notify each user serving as theexecutor of the print job of the fact that the print job is stored inthe print server 2 (ACT 39). For example, when the executors of theprint jobs include the user other than the sender of the print job, theprocessor 21 determines to notify the user other than the sender of thefact that the print job is stored. Further, when the executor of theprint job is designated as the individual user, the processor 21notifies each designated user of the fact that the print job is stored.When the executor of the print job is designated as the group, theprocessor 21 determines to notify each of the users belonging to thedesignated group.

If the processor 21 notifies each user who is able to execute the printjob of the fact that the print job is stored in the print server 2 (YESin ACT 39), the processor 21 executes notification setting to notifyeach user of the fact that the print job is stored in the print server 2(ACT 40). For example, when the notification for the print job is givenby a mail, the processor 21 starts the notification by generating amessage of the mail and setting the mail address of each user in thegenerated mail. When the notification setting is completed, theprocessor 21 notifies each individual user of the fact that the printjob is stored in the print server 2 (ACT 41) and ends the registrationprocess.

Next, the storage form of the print job in the print server 2 will bedescribed.

FIG. 9 is a diagram illustrating a first storage form of the print jobin the print server 2.

In the example shown in FIG. 9, all the print jobs are distributed tothe respective users and are stored. In the first storage form shown inFIG. 9, all the print jobs are stored for the respective users.Therefore, when the user (receiver) who is able to execute the print jobis designated as the group, the print job (with the PJL data) is storedin each of the folders of all the users belonging to the designatedgroup. In the configuration shown in FIG. 9, the print job may bedeleted from the folder of the user whenever each user executes theprint job.

FIG. 10 is a diagram illustrating a second storage form of the print jobin the print server 2.

In the example shown in FIG. 10, the print job designating theindividual user as the receiver is stored for each user and the printjob designating the group as the receiver is stored for each group. Inthe second storage form shown in FIG. 10, a folder group of eachindividual user and a folder group of each group are provided as thestorage region where the print jobs for the PULL print are stored.

When the user (receiver) who is able to execute the print job isdesignated as the group, the print job (with the PJL data) is stored inthe folder of the designated group. In the second storage form, however,since one print job is stored in the file of each group, it is necessaryto manage the execution state of the print job of each user. Therefore,in the second storage form shown in FIG. 10, a JobManager file isgenerated for each group and is stored together with the print job (withthe PJL data) in the folder of each group. Further, a RoleManager fileis stored in the upper level of the folder group of each group.

FIGS. 11 and 12 are diagrams illustrating examples of the structure ofthe JobManager file.

In the examples shown in FIGS. 11 and 12, the JobManager file stores“Title”, “Role”, “Count”, and “Time” for each print job in each group.The “Title” is an arbitrary character string used to identify the printjob. The “Count” indicates the remaining number of times by which theprint job is executed in the group. The initial value of the “Count” isset to the number of users belonging to the group. The value of the“Count” is counted down whenever the user belonging to the groupexecutes the print job. Accordingly, the value of the “Count” becomes“0” when the print job is executed by the number of users belonging tothe group. When the value of the “Count” becomes “0”, the print job isdeleted from the folder of the group.

The value of the “Time” is a value indicating the storage period of theprint job. The value of the “Time” may be a default value or the userterminal 1 may set the value when setting the print job. When thestorage period defined in “Time” expires, the print job is deleted fromthe folder of the group. The “Role” indicates the option settingcontents in the printing based on the print job. The details of the“Role” are designated in the RoleManager file.

FIG. 13 is a diagram illustrating an example of the structure of theRoleManager file.

In the example shown in FIG. 13, the RoleManager file stores“ColorMode”, “Duplex”, and “Nin1” as one piece of role information. The“ColorMode” is generated or selected with a unique title as one piece ofrole information. The “Duplex” indicates both-side printing setting. Forexample, when the “Duplex” is “0”, the “Duplex” indicates single-sideprinting setting. When the “Duplex” is “1”, the “Duplex” indicatesboth-side printing setting. The “Nin1” indicates setting in which theimages corresponding to N pages are printed on one surface of the sheet.For example, when the “Nin1” is “1”, the “Nin1” indicates setting of 1in 1 (setting in which the image corresponding one page is printed onone surface). When the “Nin1” is “2”, the “Nin1” indicates setting of 2in 1 (setting in which the images corresponding two pages are printed onone surface).

FIG. 14 is a diagram illustrating a third storage form of the print jobin the print server 2.

In the third storage form shown in FIG. 14, a JobCount file and aJobRole file are stored for each group. FIG. 15 is a diagramillustrating an example of the structure of the JobCount file and FIG.16 is an example of the structure of the JobRole file.

In the example shown in FIG. 15, the JobCount file stores “Title”,“Count”, and “Time”. In the example shown in FIG. 16, the JobRole filestores “Title” and “Role”. The meanings of the “Title”, “Count”, “Time”,and “Role” are the same as those of the JobManager file shown in FIGS.11 and 12.

That is, in the third storage form shown in FIG. 14, the JobCount filestores the condition that the print job is deleted from the folder ofthe group and the JobRole file stores information indicating the settingcontents when the user of the group executes the print job. The numberof JobRole files may be two or more in each group. For example, theJobRole file may be provided for each user. When the JobRole file isprovided for each user, the setting contents of the case of executingthe printing job for each user can be designated. For example, the userwho executes the print job in accordance with first setting contents andthe user who executes the print job in accordance with second settingcontents can be designated even in the same group.

In the JobRole file, the “Role” newly generated in the print settingfrom the user terminal 1 may be stored. This “Role” information may berealized in the format as that of each of the role information stored inthe RoleManager file. The newly generated “Role” information is storedlocally in the folder of each group. The newly generated “Role”information may be stored not only in the folder of the group unit butalso in the folder of each individual user.

FIG. 17 is a diagram illustrating a fourth storage form of the print jobin the print server 2.

In the fourth storage form shown in FIG. 17, a Users file and a JobRolefile are stored for each group. FIG. 18 is a diagram illustrating anexample of the Users file.

The Users file stores information confirming whether the execution ofthe print job ends for each user in the group. In the example shown inFIG. 18, the Users file stores “Name” and “PrintOut tag of each Title”for each user. For example, when the user “user001” does not execute theprint job of “Title111”, the PrintOut tag of the “Title111” of the“user001” with “Name” is set to “0”. When the user “user001” executesthe print job of the “Title111”, the PrintOut tag of the “Title111” ofthe “user001” is changed into “1”.

The Users file shown in FIG. 18 is generated or updated, for example, inthe process of registering the print job. When the print job selectionscreen is displayed on the display unit 36 of the image formingapparatus 3, the processor 21 of the print server 2 extracts the printjobs (the print jobs in which the printing is not executed) with the“PrintOut tag” of “0” from the Users file and displays the list of theextracted print jobs on the display unit 36.

Next, the execution process (transmission process) of the print job inthe print server 2 will be described.

FIG. 19 is a flowchart illustrating the execution process (transmissionprocess) of the print job in the print server 2.

The print server 2 receives an access of each image forming apparatus 3connected to the network 5 at any timing. For example, the print server2 receives a display request for the list of the print jobs for the PULLprint from any image forming apparatus 3. In the display request for thelist of the print jobs for the PULL print, the image forming apparatus 3designates the user or the group succeeding in authentication andrequests the list of the print jobs of the individual user or the group.The processor 21 of the print server 2 determines whether the user isdesignated or the group is designated in the request for the list of theprint jobs received from the image forming apparatuses 3.

If the individual user is designated (YES in ACT 52), the processor 21extracts the print jobs that the users are able to execute from the JOBstorage region 46 a by the management function 46. The processor 21generates the list indicating the extracted print jobs as the list ofthe print jobs of the respective users (ACT 53). For example, theprocessor 21 generates the list of the print jobs of the respectiveusers displayed on the print job selection screen displayed by thedisplay unit 36 of the image forming apparatus 3. The processor 21transmits the generated list of the print jobs to the image formingapparatus 3 (ACT 54).

If the group is designated (NO in ACT 52), the processor 21 extracts theprint jobs that the users belonging to the group are able to executefrom the JOB storage region 46 a by the management function 46. Theprocessor 21 generates the list indicating the extracted print jobs asthe list of the print jobs of the respective groups (ACT 55). Forexample, the processor 21 generates the list of the print jobs of therespective users displayed on the print job selection screen displayedby the display unit 36 of the image forming apparatus 3. The processor21 transmits the generated list of the print jobs to the image formingapparatus 3 (ACT 54).

After the processor 21 transmits the list of the print jobs, theprocessor 21 of the print server 2 receives an execution instruction(transmission request) for the print jobs selected from the transmittedlist of the print jobs (ACT 55). If the processor 21 receives theexecution instruction for a specific print job from the image formingapparatus 3 (YES in ACT 55), the processor 21 determines whether apassword is set in the print job instructed to be executed (ACT 56).

If the password is set in the print job instructed to be executed (YESin ACT 56), the processor 21 transmits an input request for the passwordto the image forming apparatus 3 which is a transmission source of theexecution instruction for the print job (ACT 57). If the processor 21acquires the password input from the image forming apparatus 3 by theuser (YES in ACT 58), the processor 21 determines whether the passwordset in the print job is identical to the password acquired from theimage forming apparatus 3 (ACT 59).

If the processor 21 may not acquire the password from the image formingapparatus 3 (NO in ACT 58) or if the password acquired from the imageforming apparatus 3 is not identical (NO in ACT 59), the processor 21transmits an error notification to the image forming apparatus 3 (ACT66) and stops transmitting the print job instructed to be executed.

If the passwords are identical to each other (YES in ACT 59), theprocessor 21 reads the print job instructed to be executed from the JOBstorage region 46 a by the management function 46 and transmits theprint job instructed to be executed to the image forming apparatus 3(ACT 61). After the processor 21 transmits the print job, the processor21 determines whether the print job is deleted (ACT 62). If theprocessor 21 determines that the print job is deleted (YES in ACT 62),the processor 21 deletes the print job transmitted to the image formingapparatus 3 (ACT 63) and ends the process.

For example, when each individual user can execute the print job onlyonce and the transmitted print job is the print job read from theindividual user, the processor 21 deletes the print job from the folderof the individual user. When the transmitted print job is the print jobread from the folder of the group, the processor 21 updates theJobManager file, the JobCount file, or the Users file managing theexecution state of the print jobs in each group, as described above, anddetermines whether to delete the print job from the folder of the group.

For example, when the storage form of the print jobs is the secondstorage form shown in FIG. 10, the processor 21 decreases the value ofthe “Count” in the JobManager file by “1” and determines whether todelete the print job depending on whether the value of the “Count” is“0”. Further, when the storage form of the print jobs is the thirdstorage form shown in FIG. 14, the processor 21 decreases the value ofthe “Count” in the JobCount file by “1” and determines whether to deletethe print job depending on whether the value of the “Count” is “0”.Furthermore, when the storage form of the print jobs is the fourthstorage form shown in FIG. 17, the processor 21 updates the Print Outtag of the user into “1” (where the execution ends) in the Users fileand determines whether to delete the print job depending on whether thetags of all the users of the print jobs completely ends.

Next, the execution process of the print job in the image formingapparatus 3 will be described.

FIG. 20 is a flowchart illustrating an execution process of the printjob in the image forming apparatus 3.

The image forming apparatus 3 can gain access to the print server 2executing the processes shown in FIG. 19 via the network 5 at anytiming. Here, when the user starts operating the image forming apparatus3 (or starts the PULL print), it is assumed that the processor 31 of theimage forming apparatus 3 executes user authentication as a log-inprocess of the user.

That is, the processor 31 of the image forming apparatus 3 acquires theuser ID, the authentication information, and the like input to log inthe image forming apparatus 3 by the user (ACT 71). The authenticationinformation may be information read from an IC card of the user by an ICcard reader serving as the authentication information acquisition unit39 or may be authentication information such as a password input throughthe operation unit 37 by the user. When the processor 31 acquires theuser ID and the authentication information, the processor 31 transmitsan authentication request to the print server 2 (ACT 72). After theprocessor 31 transmits the authentication request, the processor 31receives the authentication result from the print server 2.

If the processor 31 receives a notification for user authenticationsuccess from the print server 2 (YES in ACT 73), the processor 31displays a menu screen (ACT 74) and receives a selection of the PULLprint as one of the print functions. If the PULL print is selected (YESin ACT 75), the processor 31 requests the print server 2 to transmit thelist of the print jobs of each individual user or the list of the printjobs of each group in response to the operation from the user.

For example, if the processor 31 requests the print server 2 to transmitthe list of the print jobs of the individual user (YES in ACT 76), theprocessor 31 requests the print server 2 to transmit the list of theprint jobs designating the users succeeding in the authentication (ACT77). The print server 2 generates the list of the print jobs of thedesignated users and transmits the list of the print jobs of thedesignated users to the image forming apparatus 3. The processor 31 ofthe image forming apparatus 3 displays the list of the print jobs of therespective users received from the print server 2 on the display unit 36(ACT 78). For example, the display unit 36 displays the list of theprint jobs of the respective users as a print job selection screen usedfor the user to select a specific print job.

If the processor 31 requests the print server 2 to transmit the list ofthe print jobs of the respective groups (YES in ACT 79), the processor31 requests the print server 2 to transmit the list of the print jobsdesignating the group to which the users succeeding in theauthentication belong (ACT 80). The print server 2 generates the list ofthe print jobs of the designated groups and transmits the list of theprint jobs of the designated groups to the image forming apparatus 3.The processor 31 of the image forming apparatus 3 displays the list ofthe print jobs of the respective groups received from the print server 2on the display unit 36 (ACT 81). For example, the display unit 36displays the list of the print jobs of the respective users as a printjob selection screen used for the user to select a specific print job.

FIG. 21 is a diagram illustrating a display example of the print jobselection screen including the list of the print jobs of the respectiveusers. FIG. 22 is a diagram illustrating a display example of the printjob selection screen including the list of the print jobs of therespective group.

In FIGS. 21 and 22, the display examples are switched in response to theinput of tabs 71 and 72. The tab 71, the tab 72, a list 73 (or 74), adeletion button 75, a clear button 76, an all selection button 77, and aprint button 78 are displayed on the print job selection screen shown inFIGS. 21 and 22.

The tab 71 instructs the display of the list of the print jobs of therespective users. The tab 72 instructs the display of the list of theprint jobs of the respective users. The list 73 is an example of thelist of the print jobs of the respective users displayed when the tab 71is selected. The list 74 is an example of the list of the print jobs ofthe respective groups displayed when the tab 72 is selected. Thedeletion button 75 is a button used to instruct the deletion of theselected print jobs. The clear button 76 is a button used to instructclearing of the selection contents or the like. The all selection button77 is a button used to instruct all the print jobs displayed in the listso as to be selected. The print button 78 is a button used to instructthe execution of the printing by the selected print jobs.

That is, when the tab 71 displayed as “User” is selected, the displayunit 36 displays the list 73 of the print jobs (the list of the printjobs in which a user A is designated) of the individual users, as shownin FIG. 21. Further, when the tab 72 displayed as “Group” is selected,the display unit 36 displays the list 74 of the print jobs (the list ofthe print jobs in which a group A is designated) of the respectivegroups, as shown in FIG. 22.

In the display example shown in FIG. 21, the user (sender) of thetransmission source of each print job is displayed. When the sender isthe user himself or herself, the print job means that the print job issent by the user himself or herself. For example, in the display exampleshown in FIG. 21, the print job of the sender User A is the print jobthat the User A himself or herself transmits (sets). As shown in FIG.21, by displaying the senders in correspondence with the respectiveprint jobs, it is possible to easily recognize whether each print job isthe print job that the user himself or herself transmits or the transmitjob that another user transmits.

In the display example shown in FIG. 22, the group is displayed as theexecutor for each print job. For example, in the display example shownin FIG. 22, the print job in which Group A is designated and the printjob in which Group A and Group C are designated are displayed. Bydisplaying the groups that are able to execute the print jobs, the usercan recognize that each print job is the print job permitted to beexecuted in a given group, and thus can predict the kinds of print jobs.

The user can select one print job and instructs the execution of theprint job on the print job selection screen including the list of theprint jobs of the respective users and the list of the print jobs of therespective groups. If the processor 21 receives an instruction for theexecution of the selected one print job (YES in ACT 82), the processor21 determines whether a password is set in the print job (ACT 83). Ifthe password is set (YES in ACT 83), the processor 21 displays thepassword input screen on the display unit 36 (ACT 84) and prompts theuser to input the password.

When the user inputs the password, the processor 31 requests the printserver 2 to combine the password input for the print server 2 and thepassword set for the print job (ACT 85). When the image formingapparatus holds the password set for the print job, the password inputby the processor 31 may be combined with the password for the print job.

If the combination of the passwords fails (NO in ACT 86), the processor31 displays an error notification on the display unit 36 (ACT 87) andstops this process. Even if the combination of the passwords fails, theinput of the password may be received again up to a predetermined numberof times and the process may be executed from ACT 84 described above.

If the combination of the passwords succeeds (YES in ACT 86), theprocessor 31 receives the print job from the print server 2 (ACT 88).After the processor 31 receives the print job, the processor 31 allowsthe printer 38 to execute the printing based on the print job (ACT 89).

In the image forming system, as described above, the print serverregisters the print job designated by the other users other than thesender set as the executor and the MFP executes the print job registeredin the print server in response to the operation of the executor otherthan the sender. According to the image forming system, the print datacan be exchanged with the other users other than the user himself orherself without actually printing the print data on a recording medium.Further, since each user designated as the executor of the print job canselect whether to execute the printing by himself or herself,unnecessary printing can thus be reduced.

When the print job designating the other users other than the sender asthe executor is registered, the print server notifies each user set asthe executor of the print job of the fact that the print job isregistered. According to the image forming system, the other users caninform each user of the executable print job registered in the printserver.

While certain embodiments have been described, these embodiments havebeen presented by way of example only, and are not intended to limit thescope of the inventions. Indeed, the novel embodiments described hereinmay be embodied in a variety of other forms; furthermore, variousomissions, substitutions and changes in the form of the embodimentsdescribed herein may be made without departing from the spirit of theinventions. The accompanying claims and their equivalents are intendedto cover such forms or modifications as would fall within the scope andspirit of the inventions.

What is claimed is:
 1. A user terminal comprising: a display unit whichdisplays a setting screen; an operation unit which inputs information inaccordance with the setting screen displayed on the display unit; aprocessor which displays the setting screen including a setting for userallowed for printing, sets a user designated by the operation unit onthe setting screen displayed on the display unit as a user allowed forprinting, and generates data indicating a printing job includinginformation indicating the set user allowed for printing; and aninterface which transmits data indicating the printing job generated bythe processor to a print server managing the printing job.
 2. The userterminal according to claim 1, wherein the processor displays acandidate list indicating user candidates settable as a user allowed forprinting, and receives designation of a user allowed for printing fromthe candidate list.
 3. The user terminal according to claim 2, whereinthe processor displays a group to which the user candidates gettable asa user allowed for printing belong on the candidate list, and receivesselection of group from the candidate list as designation of a userallowed for printing.
 4. The user terminal according to claim 1, whereinthe processor displays on a setter list a user allowed for printingdesignated by the operation unit on the setting screen displayed on thedisplay unit, and generates data indicating a printing job in which theuser displayed on the setter list is set as a user allowed for printingwhen a setting is determined.
 5. The user terminal according to claim 4,wherein the processor receives deletion of user designated by theoperation unit from the setter list.
 6. The user terminal according toclaim 1, wherein the processor receives designation of acceptance ordenial of the printing job by an operator operating the operation unit.7. The user terminal according to claim 1, wherein the processor furtherreceives designation of password relative to the printing job, and whena password is designated for the printing job, generates data indicatingthe printing job in which the designated password is set.
 8. The userterminal according to claim 1, wherein the processor further receivesdesignation of printing mode relative to the printing job, if a printingmode is designated to the printing job, generates data indicating theprinting job in which the printing mode is designated.